home *** CD-ROM | disk | FTP | other *** search
- /* $Id: I3DEXTWN.H 1.8 1997/05/24 03:41:15 psq-pc Exp $ */
- /*****************************************************************************\
- * *
- * I3DExTwn.h - I3DExTweener definition *
- * *
- * Copyright (c) 1995, Ray Dream, Inc. All rights reserved. *
- * *
- \*****************************************************************************/
-
- #ifndef __I3DEXTWN__
- #define __I3DEXTWN__
-
- #ifndef __I3DEX__
- #include "I3DEx.h"
- #endif
-
-
- //****** Globally Unique Ids *************************************************
-
- DEFINE_GUID(IID_I3DExTweener, 0x5C9601A3L, 0x7CC3, 0x101C, 0x88, 0x5F, 0x04, 0x02, 0x1C, 0x00, 0x70, 0x02);
- DEFINE_GUID(IID_I3DExTweenerEdition, 0x5C9601A4L, 0x7CC3, 0x101C, 0x88, 0x5F, 0x04, 0x02, 0x1C, 0x00, 0x70, 0x02);
-
- /*****************************************************************************\
- * I3DExTweener *
- * *
- * Animation Tweeners *
- * *
- \*****************************************************************************/
-
- struct IShKeyFrame;
- struct XTweenerChainLink;
- class LRect;
- struct I3DShTreeElement;
- struct IShGraphicDevice;
-
- #undef INTERFACE
- #define INTERFACE I3DExTweener
-
- DECLARE_INTERFACE_(I3DExTweener, I3DExDataExchanger) {
- STDMETHOD(DoTweening)(NUM3D &result, long time, long time1, long time2) PURE;
- STDMETHOD(DoTween)(IShKeyFrame *res,long time,XTweenerChainLink *alink) PURE;
- STDMETHOD(Draw)(IShGraphicDevice *aGD,const LRect *area,const LRect *where) PURE;
- STDMETHOD(DoValue)(NUM3D &res,long time,XTweenerChainLink *alink,I3DShTreeElement *tree) PURE;
- STDMETHOD(DoVector2)(VECTOR2D &res,long time,XTweenerChainLink *alink,I3DShTreeElement *tree) PURE;
- STDMETHOD(DoVector3)(VECTOR3D &res,long time,XTweenerChainLink *alink,I3DShTreeElement *tree) PURE;
- STDMETHOD(DoColor)(COLOR3D &res,long time,XTweenerChainLink *alink,I3DShTreeElement *tree) PURE;
- STDMETHOD(DoRotation)(MATRIX3D &res,long time,XTweenerChainLink *alink,I3DShTreeElement *tree) PURE;
- };
-
- #undef INTERFACE
- #define INTERFACE I3DExTweenerEdition
-
- DECLARE_INTERFACE_(I3DExTweenerEdition, IUnknown) {
- STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
- STDMETHOD_(ULONG, AddRef) (THIS) PURE;
- STDMETHOD_(ULONG, Release) (THIS) PURE;
- STDMETHOD(PrepareEdit)(THIS_ XTweenerChainLink *alink) PURE;
- };
-
- #undef INTERFACE
-
- #endif
-